#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#include<stdbool.h>

typedef int DLHDataType;
typedef struct DLHNode
{
	DLHDataType data;
	struct DLHNode* prev;
	struct DLHNode* next;
}DLH;

DLH* DLHMemCre(DLHDataType x);
DLH* DLHInit();
void DLHDestory(DLH* phead);
void DLHPrint(DLH* phead);
bool DLHEmpty(DLH* phead);
void DLHPushBack(DLH* phead, DLHDataType x);
void DLHPopBack(DLH* phead);
void DLHPushFront(DLH* phead, DLHDataType x);
void DLHPopFront(DLH* phead);
DLH* DLHFind(DLH* phead, DLHDataType fx);
void DLHInsertFront(DLH* des, DLHDataType x);
void DLHInsertBack(DLH* des, DLHDataType x);
void DLHErase(DLH* des);